/**
 * 
 */
package fr.upmc.alasca.centreCalcul.interne.machinePhysique.machineVirtuelle.ports;

import fr.upmc.alasca.centreCalcul.interne.machinePhysique.machineVirtuelle.interfaces.MachineVirtuelleCoeurI;
import fr.upmc.alasca.centreCalcul.objets.Requete;
import fr.upmc.components.ComponentI;
import fr.upmc.components.ports.AbstractOutboundPort;

/**
 * @author Antoine Lavaire, Sabri Labassi, Thibaut Fleury, Ryme Fantazi
 */
public class MachineVirtuelleCoeurOutboundPort 
extends AbstractOutboundPort
implements MachineVirtuelleCoeurI {
	
	public MachineVirtuelleCoeurOutboundPort(String uri,
			ComponentI owner) 
			throws Exception{
		
		super(uri,MachineVirtuelleCoeurI.class,owner);
	}

	/**
	 * @see fr.upmc.alasca.centreCalcul.interne.machinePhysique.machineVirtuelle.interfaces.MachineVirtuelleCoeurI#finExecutionRequete(java.lang.String, int, long, boolean)
	 */
	@Override
	public void finExecutionRequete(String uriCoeur, Requete requete,
			long tempsExecution, boolean coeurDisponible) throws Exception {
		((MachineVirtuelleCoeurI)this.connector).finExecutionRequete(uriCoeur, requete, tempsExecution, coeurDisponible);

	}

	@Override
	public void attributionNouveauCoeur(String uriCoeur) throws Exception {
		((MachineVirtuelleCoeurI)this.connector).attributionNouveauCoeur(uriCoeur);
	}

	@Override
	public void retraitCoeur(String uriCoeur) throws Exception {
		((MachineVirtuelleCoeurI)this.connector).retraitCoeur(uriCoeur);
	}

}
